1. Field of the Invention
The present invention is generally related to an apparatus and method of interleaving data conveyed over a communication network.
2. Description of the Related Art
Many communication networks convey information (i.e., transmit and receive information) in the form of packets. These well known communication networks are generally referred to as packet switching networks. A packet represents information in digital form, generally comprising three portions: a header, a payload portion and a trailer portion. Each of the portions is a group of bits. The header and trailer portions contain system information used to initiate, maintain and terminate communication between users of the communication network. For example, the header or trailer or both contain digital information relating to the routing of the packets from their source to their destination. The payload contains the information being conveyed by a user. All information conveyed by a user is hereinafter called “user information.” For example, the payload can represent voice, video, music or data. The data information is digital data that can represent graphics information, textual information and other types of information. Packet switching networks are wireline or wireless communication networks that support a plurality of users.
Wireless communication networks use various schemes—called multiple access schemes—to allow a plurality of users to use (i.e., share simultaneously) the network. Examples of well known multiple access schemes are Code Division Multiple Access (CDMA), Frequency Division Multiple Access (FDMA) and Time Division Multiple Access (TDMA). Typically, the communication network is allocated a specific bandwidth within which it may convey its communication signals. The bandwidth is a portion or the entire band of frequencies allocated to the communication network for conveying information.
A TDMA communication network allows multiple users to use the same bandwidth by creating time frames (hereinafter “frames”) during which users can convey information and where each frame is divided into time slots (hereinafter “bursts”). A burst or a group of bursts is identified and assigned to each user of the TDMA networks. Many existing wireless TDMA communication networks were established to convey mainly digital data. Examples of well known data communication networks are the General Packet Radio Service (GPRS) and Enhanced GPRS (EGPRS). As with any communication networks, the data communication networks follow protocols that are established into standards. Well known standards derived from protocols are used for different types of communication networks throughout the world. A protocol is a set of rules or procedures or both that is used to initiate, maintain and terminate communications among users of the network. Communications (i.e., conveying of communication signals) between users and system equipment are also based on protocols. The system equipment are owned, controlled and operated by system operators or providers. The system equipment are operated in accordance with the protocol.
EGPRS networks follow an EGPRS standard that defines how users gain access to the network and how the users' information that is being conveyed within the network is to be processed. Access to a communication network is the ability of a user to use the resources (e.g., system equipment, bandwidth) of the communication network. Users attempt to gain access to the communication network with user equipment such as cell phones and wireless computers. Thus, user equipment is any type of equipment typically used by users of a communication network. In an EGPRS communication network, the type of information that is typically conveyed is digital information. The digital information may represent, for example, real time video or voice signals that have been digitized and packetized in a well known manner.
Referring to FIG. 1, there is shown a portion of the system equipment for an EGPRS communication network. The equipment shown in FIG. 1 is part of the equipment used at a base station or a node of an EGPRS network to transmit information (user and system information) to user equipment in the form of a communication signal. The communication signal, which is typically a Radio Frequency (RF) sinusoidal, carries the information (user and system) being conveyed. The base station is the set of equipment that communicates via wireless channels with users within a certain defined geographical area covered by the base station. The area covered by the base station is typically called a cell. The communication channel through which the base station equipment transmits information is called the downlink. The base station also includes receiving equipment (not shown) which receives information from users within the cell via communication channels called the uplink. FIG. 1 also represents part of user equipment which transmit information (as per the EGPRS standard or other standard) over the uplink to base station equipment. However, for ease of explanation and to prevent redundancy in the text, FIG. 1 will hereinafter be explained in the context of system equipment at a base station.
Still referring to FIG. 1, user information, typically in the form of bits, is applied to Radio Link Control (RLC) framer 102. RLC framer 102 is a device that arranges the user information into RLC blocks. An RLC block is simply a grouping of bits based on a particular format established by the standard being followed by a communication network. Each RLC block has a Header portion and a trailer portion within which system information is placed. User information is placed in the DATA portion of the RLC block. The RLC blocks are then applied to Coder 104 which performs a coding operation on each of the RLC blocks. Essentially, the coding operation adds redundancies to user information so as to combat against errors that occur when the information is transmitted through the downlink. In this example, we suppose that the particular coding scheme used by coder 104 is a well known coding scheme called convolutional coding. The convolutional coding has a certain ratio of output bits (k) to input bits (n) called a Rate       k    n    .A Rate   1  3convolutional coder outputs three bits for every input bit. For example, a Rate   1  3convolutional coder generates three coded sub-blocks for every RLC block applied to its input.
In communication systems such as the one partially depicted in FIG. 1, relatively great amounts of information are transmitted as intermittent bursts. A packet burst can be adversely affected by communication channel anomalies causing a great amount of information to be lost. Some of these anomalies are phase jitter, frequency translation, amplitude and phase fading and multipath distortions. An additional scheme typically used in packet switched networks to combat errors is the technique of interleaving. Interleaving is a process by which the time order of coded portions of one or more coded Radio Link Control (RLC) blocks are scrambled. Basically, interleaving adds time diversity to the information being transmitted by spreading out the information from any particular coded RLC block over time. The plurality of RLC blocks may be from one or more than one user, but interleaving is typically performed over a single RLC block from a single user. Through interleaving, if a burst of received information is adversely affected, only a portion of any particular coded RLC block is impacted. This decreases the likelihood that all of the information for a particular coded RLC block is corrupted and thus allows a convolutional decoder (not shown) to enhance its ability to perform error correction. There are different well known types of interleaving methods, which basically define how different units of information are processed to implement the interleaving process. Some of these well known interleaving methods include block interleaving, chain interleaving and diagonal interleaving. An interleaver is said to have depth which is directly related to the amount of time that it takes to transmit a particular block of information. The more spreading of a specific amount of information over time, the more depth the interleaving process is said to have. Thus, the interleaving depth is the time period within which a certain amount of information is interleaved.
The coded information from Coders 104 is applied to Interleaver 108 after having been punctured by Puncturer 106. Puncturer 106 performs an operation known as puncturing. Puncturing is the selective removal of portions of coded information in accordance with a particular algorithm. Particular portions of the coded information are removed from particular locations in the information and discarded. After the coded and punctured information is transmitted through a channel and received, the receiving equipment inserts predefined information into those particular locations. For example, for digital information, most standardized puncturing algorithms cause the receiving equipment to insert a “0” bit in place of missing information. The punctured information is usually chosen such that the receiver, through convolutional decoding, can determine all of the unsent information assuming most of the sent information was received correctly.
The output of Interleaver 108 is applied to Modulator 110. Modulator 110 performs a standard digital modulation operation called Phase Shift Keying (PSK). A particular type of PSK modulation called 8-PSK, which generates a communication signal for every three bits of information (user and system) from Interleaver 108, is used. Another type of modulation is called Gaussian Minimum Shift Keying (GMSK), which generates a communication signal for every bit of information. The frequency content of the communication signal generated by Modulator 110 falls within the bandwidth allocated to the communication network. The output of Modulator 110 is applied to Radio Transmitter 112 which amplifies and transmits the communication signal over downlink channels to designated users of the communication network.
The use of a particular modulation scheme in conjunction with a specific type of coding is directly related to a communication network's ability to prevent errors or correct errors or both that occur when communication signals are subjected to channel anomalies. Several Modulation Coding Schemes (MCS) have been well defined for various types of communication networks by the European Telecommunications Standards Institute (ETSI) EGPRS standard and EDGE standard. For example, MCS1-MCS9 are nine known schemes which specify the type and nature of coding and modulation used for EGPRS. In particular MCS1-MCS4 use a GMSK modulation scheme and various types of coding. MCS5-MCS9 use an 8-PSK modulation scheme and different types of coding. Moreover, particular interleaving schemes and framing arrangements are associated with the MCS. For example, for MCS9, block interleaving is used and two RLC blocks are formatted for transmission during a time block of the communication system. The time block is a period of time during which the communication network transmits or receives a unit of information as defined by the standard with which the communication network complies. For an EGPRS system using an MCS9 scheme, the time block is 20 milliseconds during which time two RLC blocks are transmitted. For other MCS, the number of RLC blocks transmitted during a time block may be different.
The particular coding, puncturing, interleaving and modulation values or schemes (hereinafter referred to as system parameters) being implemented by a communication network can be changed or modified based on the quality of service being provided by a service provider. The system equipment (or user equipment) operate the communication network by processing user information and system information based on the system parameters. Any one or any combination of some or all of the system parameters or their values can be changed statically and/or dynamically(i.e., during transmission of information). At any instant each parameter has a specific value or scheme associated with it. For example, a value for the coding scheme is the coding rate and a value for the interleaving scheme is the interleaving depth. A service provider will attempt to apply the proper system parameter values to meet particular quality of service requirements set by a standard or required by subscribers of the communication network. Different standards use different parameter values to meet the requisite quality of service. One particular measure of the quality of service of a communication network is the Information Error Rate (IER). The IER is typically a ratio of the amount of errors in received information to the total amount of information received for a specific period of time. Some examples of well known information error rates are the Bit Error Rate (BER), the Block Error Rate (BLER), the Frame Error Rate (FER) and the Character Error Rate (CER). In all these cases, the IER is the ratio of the number of erroneous units of information (e.g., bits, blocks, frames, characters) to the total number of units of information received for a defined period of time.
Referring to FIG. 2, there is shown the particular arrangement of RLC blocks for a downlink channel of a communication network that is using the MCS9. RLC blocks 204 and 206 are transmitted during a 20 ms period. Each RLC block contains Header and trailer information that specify, inter alia, the particular interleaving, coding and puncturing schemes being used. FIG. 2 shows information typically associated with one user of the communication network. During the occurrence of a downlink block, information from a plurality of users is being transmitted by the system equipment. FIG. 3 shows a TDMA format that allows a plurality of users to share a downlink channel. Downlink block 300 comprises four frames (302, 304, 306 and 308). Each of the four frames comprises eight bursts. For purposes of illustration, the format of the fifth burst of frame 304 (i.e., burst 304a) is shown. The information conveyed during burst 304a is arranged as different fields. The Header and Trailer fields contain system information used by the system equipment of the communication network to initiate communication between users, maintain communication (including routing of the packets) and terminate communications. User information and system information are transmitted during the DATA fields of burst 304a. The TS field is a Training Sequence field during which system information is transmitted that helps user equipment receiving the DATA to synchronize with the base station equipment. The Header and Trailer fields represent system information from the RLC Header and Trailer portions and other system information.
The information (user and system) contained in the RLC blocks are transmitted during particular bursts of particular frames assigned to a user. For a communication network using MCS9, the information contained in the two RLC blocks-after having been coded and punctured—is transmitted during four bursts of the four different frames of a downlink block. The information is spread over the four frames due to the interleaving process. Because of the spreading, receiving user equipment (not shown) must wait for at least the duration of the downlink block (approximately 20 ms) before it can demodulate and decode the received information. For example, the user equipment must wait until it has received all four frames of a broadcast downlink block before it can decode the two RLC blocks. As the interleaving depth is increased, the resulting delay can cause noticeable gaps in the received information. However such gaps can be eliminated if the received information is buffered (i.e., temporarily stored contiguously) so that the information is output in continuous fashion. In effect, the buffer adds additional delay to the received information. As long as the delay gaps due to spreading are less than the delay added by the buffer, such gaps can be eliminated. When a buffer is used, there is a delay in initially receiving the information, but the information exiting the buffer has no gaps (assuming that the buffer is sufficiently large to encompass the gaps occurring due to spreading).
For certain types of information, such as voice, real time video, and music, relatively small gaps in the reception of information are usually unacceptable. These types of information, which are generally called streaming and conversational services, by their very nature cannot tolerate gaps. A gap in information representing voice, music and real time video can cause discernable distortions that reduce the quality of the information. The extent of the distortions can be such that most or all of the received information becomes unintelligible due to an increase in IER. Furthermore, streaming and conversational services typically require relatively lower IER than other types of information.
The ETSI EDGE or EGPRS standard which uses one of the MCS1-MCS9 schemes allows for coding and interleaving RLC blocks over a time block (i.e., four frames). These schemes yield a resulting IER that often is not acceptable for streaming and conversational services. Additional coding and interleaving can be executed so as to reduce the IER, but such additional processing require modifications in the system and user equipment that transmit and receive information in accordance with such standards. Such modifications translate to additional cost of operation to system operators or providers because in many cases new hardware and software would be necessary. Also, such modifications would require relatively large amounts of amendments to well established standards—again resulting in hardware and software modifications to user and system equipment that increase the cost of operation to service providers.
Therefore, a method and apparatus for reducing the IER of a communication network without any substantial modification to user and system equipment and which can be executed within the context of an established standard (i.e., set of established system parameter values) is required. Such a method and apparatus will allow service providers to provide streaming and conversational services with little or no additional cost of operation to system providers. What is further needed is a method and apparatus by which the IER is reduced while still using an established set of system parameter values designated by a standard such as EGPRS or EDGE.